#define maxsize 50
#include <iostream>
using namespace std;
typedef struct{
	int data[maxsize];
	int length;
}SqList;
typedef SqList *List;
void CreateSqList(List &L,int a[],int n);
void DispSqList(List L);
void DestroyList(List &L);
void DelSameNode(List &L) ;
void DestroyList(List &L){
	delete L;
}
int main()
{
	int i,n;
	int a[maxsize];
	List L;
	cin>>n; 
	for(i=0;i<n;i++)
	   cin>>a[i];
	 CreateSqList(L,a,n)  ;
	 DelSameNode(L) ;
	 DispSqList(L);  
	 DestroyList(L);
}
void CreateSqList(List &L,int a[],int n)
{
	L=new SqList ;
	int i=0;
	while(i<n)
	{
		L->data[i]=a[i];
	     i++;
	}
	L->length=n;
}
void DispSqList(List L)
{
	for(int i=0;i<L->length;i++)
	{
		if(i==L->length-1)cout << L->data[i];
		else cout << L->data[i]<<" ";
	}
	
	
}
void DelSameNode(List &L)
{
int i,j,k;
    for(i=0;i<L->length-1;i++)             
    { 
        for(j=i+1;j<L->length;j++)         
            if(L->data[i]==L->data[j])
        {
            for(k=j;k<L->length-1;k++)      
                L->data[k]=L->data[k+1];
            L->length--;i--;                  
        }
    }
    return ;
}
